home *** CD-ROM | disk | FTP | other *** search
/ PsL Monthly 1993 December / PSL Monthly Shareware CD-ROM (December 1993).iso / prgmming / dos / c / tcclib.exe / STRINS.C < prev    next >
Encoding:
C/C++ Source or Header  |  1990-01-31  |  688 b   |  26 lines

  1. #include <alloc.h>
  2. #include <string.h>
  3.  
  4. char *strins ( char *string, int start, char *insstr )
  5. {
  6.     register int smaxlen, imaxlen;
  7.     char *success;
  8.  
  9.     smaxlen = strlen (string);
  10.     imaxlen = strlen (insstr);
  11.     --start; /* make start zero relative */
  12.     if ( start < smaxlen ) {   /* +1 for null char */
  13.         success = malloc (smaxlen - start + 1 );
  14.         memcpy (success, &string[start], smaxlen - start + 1);
  15.         memcpy (&string[start], insstr, imaxlen);
  16.         memcpy (&string[start] + imaxlen, success, smaxlen - start + 1);
  17.         free (success);
  18.         success = string;
  19.     }
  20.     else
  21.         success = NULL;
  22.  
  23.     return (success);
  24. }
  25.  
  26.